package com.aij.starter.service;

import com.aij.starter.event.LlamaEventHandler;
import com.aij.starter.jna.Llama;

/**
 * Llama服务类
 * @author aij
 */
public class LlamaService extends LlmService {
	
    public String model = "";
    
    LlamaService(String model) {
    	this.model = model;
    }

	@Override
	protected void LlmInit() {
		Llama.Initialize(model);
	}

	@Override
	protected void LlmRun(String word) {
		Llama.Run(word);
	}

	@Override
	protected String LlmPop() {
        if (LlamaEventHandler.TextFinished())
        {
            String text = LlamaEventHandler.PopText();
            return text;
        }
        return null;
	}

	@Override
	protected void LlmFree() {
		Llama.Destroy();
	}

}
